package com.lin.subject.domain.service;


import com.lin.subject.commom.entity.PageResult;
import com.lin.subject.domain.entity.SubjectLikedBO;

/**
 * 题目点赞表 领域service
 *
 * @author jingdianjichi
 * @since 2024-01-07 23:08:45
 */
public interface SubjectLikedDomainService {

    /**
     * 添加 题目点赞表 信息
     */
    void add(SubjectLikedBO subjectLikedBO);

    /**
     * 更新 题目点赞表 信息
     */
    Boolean update(SubjectLikedBO subjectLikedBO);

    /**
     * 删除 题目点赞表 信息
     */
    Boolean delete(SubjectLikedBO subjectLikedBO);

    /**
     * 查看 题目是否被某人点赞
     * @param id
     * @param loginId
     * @return
     */
    Boolean getLiked(Long id, String loginId);

    /**
     * 获取某个题目 点赞的数量
     * @param id
     * @return
     */
    Integer getLikedCount(Long id);

    /**
     * 同步点赞数据
     */
    void syncLiked();

    /**
     * 我的点赞，分页列表
     * @param subjectLikedBO
     * @return
     */
    PageResult<SubjectLikedBO> getSubjectLikedPage(SubjectLikedBO subjectLikedBO);
}
